<?php

namespace DatMoment\VideoBundle\Metier\Operations;

use DatMoment\VideoBundle\Entity\Jeux;
use Symfony\Component\Security\Core\Exception;

class JeuxOperations {
    
    private $jeux;
    private $entityManager;
    private $jeuxRepository;
    
    public function __construct($pentityManager) {
        $this->entityManager = $pentityManager;
        $this->jeuxRepository = $this->entityManager->getRepository('DatMomentVideoBundle:Jeux');
    }
    
    public function createJeux($pname) {
        $this->jeux = new Jeux();
        $this->jeux->setName($pname);
    }
    
    public function getJeux() {
        return $this->jeux;
    }
    
    public function initialisationJeux($pJeux) {
        $this->categorie = $pJeux;
    }
    
    public function findOneByName($pname) {
        $listJeux = $this->jeuxRepository->findAll();
        foreach ($listJeux as $jeu) {
            if ($jeu->getName() == $pname) {
                return $jeu;
            }
        }  
    }
    
    public function findAllJeux() {
        return $this->jeuxRepository->findAll();
    }
    
    public function persist() {
        if ($this->jeux != null) {
            $this->entityManager->persist($this->jeux);
            $this->entityManager->flush();
        }
        else {
            throw new Exception\InvalidArgumentException("JeuxOperations.php : L'objet est mal renseigné et n'a pas pu être persisté");
        }
    }
}

?>
